﻿$(function() {
$('#chooseperson').autocomplete(base + 'task.ivp/findpersons').result(personSelected);
    
    if ($('#readonly').length > 0) {
        $('input,textarea').attr('disabled', true).addClass('disabled');
        $('select').attr('disabled', true).addClass('disabled');
    }

    if ($('#notarialdetails'))
        $('#notarialactionid').change(function() {
            $.getJSON(base + 'task.ivp/getnotarialdescription/' + this.value
                , { json: true, date: new Date().toString() }
                , function(result) { $('#notarialdetails').html(result); })
        });

    if ($('#calendarholder') && $('#date'))
        $('#date').calendar({
            parentElement: '#calendarholder',
            dateFormat: '%d.%m.%Y'
        });

    if ($('#date'))
        $('#date').change(function() {
            getPeriod();
        });

    if ($('#scheduleid'))
        $('#scheduleid').change(function() {
            $('#period').val('Дата не выбрана');
            $('#startdate').val('');
            $('#enddate').val('');

            if (!($('#taskschedule').hasClass('hidden'))) {
                $('#taskschedule').addClass('hidden');
            }
        });
});

function selectPerson() {
    var dlg = openDialog('person.ivp/select?reset=true');
    dlg.callback = function(id) { _personSelected(id, dlg.userNames['un' + id.toString()]); }
    return false;
}

function personSelected(e, d) {
    var id = d[1];
    var name = d[0];
    $(e.target).val('');
    _personSelected(id, name);
}

function _personSelected(id, name, hideselect) {
    $('#person a').remove();
    var html = '<div class="input px250"><a href="#" onclick="return showPerson(' + id + ')">' + name + '</a></div>';
    $('#person ').html(html);
    $('#personid').val(id);
    $('#linkchangeperson a').html('Изменить заявителя');
    //if (hideselect)
       // $('#changeperson').addClass('hidden');
    return false;
}

function showPerson(id) {
    openDialog('person.ivp/view/' + id + '?popup=true', '', { width: 700, height: 550 });
    return false;
}

function toggleChangeButton() {
    $('#changeperson, #linkchangeperson').toggleClass('hidden');
    return false;
}

function createPerson() {
    var dlg = openDialog('person.ivp/create?isexternal=true&popup=true&lastname=' + encodeURIComponent($('#chooseperson').val()),'', { width: 700, height: 550 });
    dlg.callback = function(id, name) { _personSelected(id, name, 'true'); }
    return false;
}

function print(id) {
    var dlg = openDialog('task.ivp/view/' + id + '?print=true', 'Форма_печати');
    return false;
}

function setPeriodTime(sTime, eTime) {
    var date = $('#date').val();
    
    $('#startdate').val(date + ' ' + sTime);
    $('#enddate').val(date + ' ' + eTime);

    $('#period').val(date + ' |  ' + sTime);
    $('#taskschedule').addClass('hidden');
    
    return false;
}

function setDate() {
    if ($('#scheduleid').val() > 0) {
        if (($('#taskschedule').hasClass('hidden'))) {
            getPeriod();
            $('#taskschedule').removeClass('hidden');
        }
    }
    else 
        alert('Выберите тип календаря, по которому Вы хотите выбрать дату приема');
       
    return false;
}

function getPeriod() {
    $('#periods').empty();
    var url = 'task.ivp/getperiods';
    $('#periods').load(url, { date: $('#date').val(), scheduleid: $('#scheduleid').val(), nolayout: 'true', timestamp: new Date() }, function() { $('#periods').show(); });

    return false;
}

function afterSave() {
    if (opener && opener.reloadSchedule) {
        opener.reloadSchedule();
    }
}

/*------------notarial action functions--------------------*/

function _notarialActionSelected(e, d) {
    var name = d[0];
    var id = d[1];
    var iscomplicated = d[2];
    $(e.target).val('');
    notarialActionSelected(id, { name: name, iscomplicated: iscomplicated });
}

function notarialActionSelected(id, parameters) {
    $('#notarialactionname').html(parameters.name);
    $('#changenotarialaction').hide();
    $('#linkchangenotarialaction').show();
    $('#notarialactionid').val(id);
    return false;
}

function selectNotarialAction() {
    var dlg = openDialog('notarialaction.ivp/select?reset=true&taskactiononly=true');
    dlg.callback = function(id) { notarialActionSelected(id, dlg.notarialActionParams['n' + id.toString()]); }
    return false;
}

function changeNotarialAction(obj) {
    $('#changenotarialaction').show();
    $(obj).hide();
    return false;
}

function createOrderFromTask(id) {
    window.open(base + 'order.ivp/createfromtask/'+id);
    return false;
}